TCGETPGRP(3) | Linux Programmer's Manual | TCGETPGRP(3) |
名前¶
tcgetpgrp, tcsetpgrp - 端末のフォアグラウンド・プロセス・グループの 取得/設定を行う
書式¶
#include <unistd.h>
pid_t tcgetpgrp(int fd);
int tcsetpgrp(int fd, pid_t pgrp);
説明¶
関数 tcgetpgrp() は、 fd に対応する端末のフォアグラウンド・プロセス・グループの プロセス・グループ ID を返す。 fd で指定された端末は、呼び出しを行うプロセスの制御端末でなければならない。
関数 tcsetpgrp() は、プロセス・グループID が pgrp のプロセス・グループを fd に対応する端末のフォアグラウンド・プロセス・グループにする。 このとき、 fd は tcsetpgrp() を呼び出すプロセスの制御端末でなければならない。 さらに、 pgrp は、呼び出しを行うプロセスと同じセッションに 属する (メンバが空でない) プロセス・グループでなければならない。
tcsetpgrp() がセッションに属するバックグラウンド・グループ・プロセスのメンバから 呼び出され、かつ呼び出しを行うプロセスが SIGTTOU をブロックしたり 無視したりするようになっていない場合、 SIGTTOU シグナルは バックグラウンド・プロセス・グループの全てのメンバに送られる。
返り値¶
fd が呼び出しを行ったプロセスの制御端末を参照している場合、関数 tcgetpgrp() は、その制御端末のフォアグラウンド・プロセス・グループがあれば そのプロセス・グループの ID を返す。 そのようなプロセス・グループがなければ、現在プロセス・グループ ID として使用されていない、1より大きな何らかの値が返される。 fd が呼び出しを行ったプロセスの制御端末を参照していない場合、 -1 が返され、 errno が適切に設定される。
成功した場合、 tcsetpgrp() は 0 を返す。そうでない場合、 -1 を返し、 errno を適切に設定する。
エラー¶
準拠¶
POSIX.1-2001.
注意¶
この関数は TIOCGPGRP と TIOCGSID の ioctl 経由で実現されている。
歴史¶
これらの ioctl は 4.2BSD で登場した。 これらの関数は POSIX で考案されたものである。
関連項目¶
2003-01-28 | GNU |